1. Technical Field
The present invention relates to the field of information handling systems and in particular to an improved data processing system for presenting information to a user. Still more particularly, the present invention relates to a method and apparatus for providing backup font support for missing device font glyphs.
2. Description of Related Art
During the creation of a print job, an application may use a variety of fonts and glyphs within the fonts to produce the desired text output on an output device, such as a printer or display device. A glyph is described as an image, usually an individual character within a font, or a graphic symbol whose appearance conveys information, such as, for example, the vertical and horizontal arrows on cursor keys that indicate the directions in which they control cursor movement. Typically, the application selects a code page which defines the character encoding and the set of glyphs being used within the font. A code page is a standard character encoding that identifies a set of glyphs. A problem occurs when a font does not support all of the glyphs within a code page. In this instance, glyphs not present in the font are not printed.
More specifically, when new glyphs are created, such as the recent introduction of the Euro Currency character, many hardware devices that contain device fonts cannot be readily updated to add the new glyph support. In the case of printing devices, this creates a situation where the new glyphs are simply missing or incorrectly printed. One presently available method for printing missing glyphs involves turning off device fonts and using system fonts. A disadvantage with this method is that the amount of data downloaded to the printer increases by orders of magnitude, reducing efficiency in printing documents. Another currently available technique for providing missing glyphs is to have the device driver call the graphics system each time the device driver detects that a glyph is not supported by its device font. Thus, each device driver is constantly calling the graphics system to simulate unsupported glyphs in a backup system font. A disadvantage with this method is that the number of calls to the graphic system can be excessive, causing the printing process to stand by while the unsupported glyph is being simulated by the graphics system. Therefore, it would be advantageous to have an improved method and apparatus for outputting glyphs.
The present invention provides a method and apparatus in a data processing system for printing characters. Data received includes glyphs for output on an output device, wherein the glyphs are to be output using a selected device font. A list containing all device font supported glyphs is passed to the operating system. Monitoring for unsupported glyphs in the selected device font is performed by the operating system. In response to detecting a glyph unsupported by the selected device font, a backup system font is used to output the glyph to the output device.